Computers have various pieces of software installed thereon and have various settings made therefor. Installations of software and setting operations are called deployments. In the providing of the same deployments for load distribution, or in the providing of the same deployments as that of an old machine for a new machine when a failure occurs, an operation to provide the same deployments is sometimes performed a plurality of times. In the past, due to there being a small number of computers or a change in an environment (e.g., in a reconfiguring process to address a failure, no servers are completely the same as those at the time of building), an attempt was not often made to build many servers with the same environment. In recent years, however, a virtual environment called a “cloud” has allowed many identical environments to be prepared over a long period of time, thereby increasing the need to provide the same deployment. In such a case, possible solutions to shorten the time wasted due to an operational error or due to trial and error during an operation are the creation of a procedure manual for a deployment and the creation of a program for automatic deploying.
Not all of the operation procedures for installation are known from the beginning: installation or a setup operation is performed once, and, from the record thereof, the operation procedures are created. This is because, in many cases, installation manuals are specialized in a particular environment, and they often indicate rough installation procedures without describing specific installation procedures. This is because, in accordance with the version of an Operating System (OS), different types of software are installed, and different objects are supported by a package management system.
It is to be noted that a procedure is not recognized directly from the record of a deployment because the record of a deployment sometimes includes a process that is not related to an installation procedure. During a deployment task, trial and error is often performed; e.g., a wrong parameter is set, unnecessary processes are performed for displaying a file or a time on a screen, and mistakenly installed unnecessary software is deleted. It is difficult for the manual creator to determine from the record of executions whether such wasteful tasks were actually unnecessary. In a task finished in a few minutes, it may be soon clarified what is unnecessary; however, many tasks continue for several hours, and several hundred commands are sometimes executed. Thus, manuals and programs created by pulling out information from a procedure record sometimes lack a desirable process but include an undesirable process, and it is difficult to create a sufficient manual or program in one attempt.
In recent years, in particular, unification of a development and an operation, which is called DevOps, has been advocated. DevOps indicates removing a barrier between a development (Dev) and operations (Ops), and, in particular, DevOps indicates that a developer and an operator proceed with a task with consideration for each other. In such DevOps, it is desirable in particular to speed up the communication between the developer and the operator
The developer actually performs an installation task, makes a close investigation of the result of the task, and creates an installation script or a manual for a piece of developed software in consideration of the operator. The developer desirably quickly creates the installation script or the manual.
The operator also provides, for example, feedback on a difficulty of installation to the developer and reports a failure that occurred in installation (e.g., reports what was unnecessary). The operator makes a close investigation of the failure and reports the result to the developer so that the developer can readily check details of the failure for correction.
Technologies are also present for creating a procedure from a task record of a deployment.    Japanese Laid-open Patent Publication No. 6-230948    Japanese Laid-open Patent Publication No. 2007-80166    Japanese Laid-open Patent Publication No. 2000-242504    Japanese Laid-open Patent Publication No. 2010-123045    Japanese Laid-open Patent Publication No. 2003-15881    Japanese Laid-open Patent Publication No. 2007-079703    Japanese Laid-open Patent Publication No. 2006-133825